import { api } from '../utils/apiWrapper.js'
// 获取人力资源计划表列表
export function getResourcePlanList(params) {
  return api.get('/api/data/resource_plan', params)
}

// 获取单个人力资源计划表
export function getResourcePlanById(id) {
  return api.get(`/api/data/resource_plan/${id}`)
}

// 创建人力资源计划表
export function createResourcePlan(data) {
  return api.humanResource.create(data)
}

// 更新人力资源计划表
export function updateResourcePlan(id, data) {
  return api.put(`/api/data/resource_plan/${id}`, data)
}

// 删除人力资源计划表
export function deleteResourcePlan(id) {
    return api.delete(`/api/data/resource_plan/${id}`)
}

// 根据项目ID获取人力资源计划表
export async function getResourcePlanByProjectId(projectId) {
  console.log('获取项目人力资源计划，项目ID:', projectId)
  const params = { page: 1, pageSize: 1000, where: {project_id:projectId} }
  const res = await getResourcePlanList(params)
  console.log('API返回的原始数据:', res)
  
  // 处理不同的数据结构
  let records = []
  if (res.records && Array.isArray(res.records)) {
    records = res.records
  } else if (res.data && Array.isArray(res.data)) {
    records = res.data
  } else if (Array.isArray(res)) {
    records = res.records
  } else {
    console.error('API返回数据格式不正确:', res)
    return []
  }
  
  // 过滤当前项目的数据并按姓名和月份排序
  const data = records.filter(item => item.project_id === projectId)
    .sort((a, b) => {
      if (a.name !== b.name) {
        return a.name.localeCompare(b.name)
      }
      return a.month.localeCompare(b.month)
    })
  
  console.log('处理后的人力资源计划数据:', data)
  return data
} 